1. Field of the Invention
The present invention relates generally to editing of computerized files, and more particularly to editing of computerized text files.
2. Description of Related Art
Web sites are conventionally constructed of a plurality of individual web pages. Generally, each web page is constructed from a computerized file or files, such as graphic files and text files, that can be read by a computer system resulting in a display of data on a display screen. The computerized text files, also referred to herein as simply “files”, can be written in different languages such as HyperText Markup Language (HTML), Java, and Practical Extraction and Reporting Language (PERL), as well as other coding languages suitable for implementation of a web site.
The maintenance of the text files that support the web pages of the web site is largely performed by web designers and technical writers. When changes need to be made to a web site, the individual text files affected by the changes first need to be located and then edited to effect the changes. In some instances, locating the affected text files may require a search of each text file to determine if it is affected. In larger web sites, which can be constructed of hundreds and thousands of text files, even a simple change, such as an organizational name change, can require a large amount of time to search for and edit each affected text file.
Typically, the editing process is largely a manual process. Basic editing functions are provided by some utilities and software products, but editing is performed on one file at a time. For example, the UNIX operating system provides, “grep” and “sed” commands and a VI text editor that permit string pattern replacement in an individual file. These commands are manually intensive as each file that includes the string pattern must first be located, for example, using a UNIX command “find”. Then the file opened and each instance of the string pattern replaced, and then the file saved. Other operating systems typically provide commands and text editors that perform similar functions. Not only is the editing process time intensive, it is also unacceptably vulnerable to errors, such as missed edits or incorrectly entered changes by the user.
To control access and track changes made to the text files supporting the web site, many web designers and technical writers utilize a version control system. Generally, version control systems maintain an archive copy of a file, commonly termed a source file, and a history of changes made to the source file. In some version control systems, to modify a source file, the file must be checked-out from the version control system by a user. This typically results in the source file being locked to prevent more than one user at a time from modifying the source file. Checking-in the file to version control system registers the changes made to the source file and removes locks on the source file. Thus, while editing text files, a user can have to wait to obtain access to a file in order to make changes. Then after editing one file and checking-in the file so that the changes made to the file are registered in the version control system, a user would then have to manually search and edit (if applicable) the next file, repeating the process for all the text files supporting the web page that may be affected by the changes. This can be a time consuming process dependent on the availability of files and number of files.
Thus, it would be desirable to have a method that permits a user, such as a web designer or technical writer, to more quickly and efficiently edit text files, such as for a web site. Further, it would be desirable that the method permit multiple files to be scanned for a particular string pattern and automatically edited to replace a particular string pattern with a substitute string pattern, or to delete the particular string pattern. Also, it would be desirable that the method automatically annotate the changes made to the text file.